SDK Enterprise | Tarantool
Releases SDK Enterprise

SDK Enterprise

A Tarantool Enterprise SDK version consists of two parts:

<TARANTOOL_BASE_VERSION>-r<REVISION>

For example: 2.11.1-0-gc42d9735b-r589.

  • TARANTOOL_BASE_VERSION is the Enterprise version.
  • REVISION is the SDK revision. Besides Tarantool itself, it includes the tt utility, a set of open and closed source modules, and examples. Learn more from Package contents.

This release bumps Tarantool 2.x to 2.11.10, a bugfix release resolving 15 issues since 2.11.9. The release also updates a wide set of ecosystem components: tt-ee, crud, cartridge, vshard, metrics, checks, membership, migrations, graphqlapi, graphqlapi-helpers, and kafka.

This is a bugfix release. It resolves 15 issues since 2.11.9 (r708) and additionally introduces one optional feature. It is disabled by default and has no effect unless explicitly enabled.

  • The 2.x series is the previous stable branch; upgrading to 3.x is recommended.
  • To upgrade from Tarantool 2.x to 3.x, see the upgrade procedure.

Added:

  • The non-dynamic box.cfg.memtx_memory_recovery_check option ('off' by default) to warn ('warn') or refuse startup ('panic') when memtx_memory is set below the previously recorded usage.

Fixed:

  • box.cfg called with a non-table argument now fails with a clear cfg should be a table error instead of a confusing internal one (gh-13145).
  • Deprecated box.cfg options set via TT_* environment variables are now translated to their replacement options, and the translation no longer silently overrides an explicitly provided value of a replacement option (gh-13144).
  • A redundant deprecation warning about replication_connect_quorum being logged when bootstrap_strategy is set to 'legacy' explicitly in the same box.cfg call (gh-12933).

Fixed:

  • An ordering bug in WAL batching that could make a joining replica miss rows written by the master (gh-11028).

Backported patches from the vanilla LuaJIT trunk (gh-12480). The following issues were fixed as part of this activity:

Fixed:

  • Incorrect JIT behavior for vararg FFI functions on the macOS AArch64 platform (gh-6097).
  • Various FFI ABI and calling convention issues for x64/AArch64 architectures.
  • ipairs_aux() to match JIT backend behavior on x86/x64.
  • os.time() returning -1.
  • UBSan warnings for table.new().

Changed:

  • The default permission mode for fio.open() was changed for newly created files to 0666 (before umask) (gh-7981).

Fixed:

  • A regression of authorization on an HTTP proxy or a target HTTP(S) host using the Basic algorithm (gh-12805).

Fixed:

  • Parsing for time with a decimal fraction of hour or minute (gh-12082).
  • A stack overflow in the strptime() function when parsing timezones.

Fixed:

  • An abort when calling pack() with an empty format string or a string value for the 'a' format specifier (gh-12063).

Fixed:

  • A use-after-poison crash in uri.format() caused by a long URI.

Note

The modules listed below have changes in this release. If a module is not listed, it was not updated.

Fixed:

  • A consistency violation during rebalancing: a request could be retried on a storage that did not own the bucket yet, so a read returned no data and a write went to the wrong replica set (#509).
  • Requests are no longer retried blindly: a request is now retried only if the router has recovered from the error, and a retry never runs past the original timeout — previously, a request could take up to twice as long as requested.

Added:

  • tt connect: the \history command to display the last executed commands in the interactive console.

Changed:

  • tt stop: preliminary interrupts the processes to enable parallel termination.

Fixed:

  • tt log -f: possible line loss/duplication on rename, hanging after a watched log directory is removed, and lines written just as the file was read to the end not showing up until the next write.

This release spans versions 2.17.2, 2.17.3, 2.18.0, and 2.18.1.

Added:

  • New option --vshard-bootstrap-timeout (env TARANTOOL_VSHARD_BOOTSTRAP_TIMEOUT) of the vshard-router role to configure the vshard bootstrap timeout. The default value remains 10 seconds, which may not be enough to distribute buckets across the storages on slow CI runners.
  • Optional timeout argument to cartridge.test-helpers.Cluster:start, cartridge.test-helpers.Cluster:bootstrap, and cartridge.test-helpers.Cluster:bootstrap_vshard to extend the bootstrap HTTP request timeout.

Updated:

  • vshard dependency from version 0.1.41 to 0.1.42.
  • checks dependency from version 3.4.0 to 3.4.1.
  • http dependency from version 1.9.0 to 1.9.1. This release includes infrastructure fixes that do not alter the module’s behavior.
  • membership dependency from version 2.5.3 to 2.5.4.

Fixed:

  • A race condition during instance shutdown where membership.leave() could execute before roles were stopped, causing errors.
  • When box.ctl.promote() returns ER_INTERFERING_PROMOTE during failover, the retry now happens 3 times with a 1-second delay so the new master doesn’t get stuck in read-only mode.

Added:

  • The WITH_ZSTD build flag to enable zstd compression support. In the Enterprise SDK build, zstd support is enabled by default.

Changed:

  • Bumped librdkafka to 2.15.1.

This release spans versions 1.8.2 and 1.8.3: it introduces EmmyLua annotations and fixes the CI pipeline to run on external pull requests.

Added:

  • EmmyLua analyzer support and annotations (#551).

Changed:

  • Set config.checks to 'off' in default_config to avoid environment-dependent alerts (THP, readahead) in tests (#549).
  • CI is now run on pull requests in addition to branch pushes; runs are skipped for pull requests from the base repository to avoid duplicates (#555).

Fixed:

  • config_metrics_test: disable system alerts only if the config.checks option exists (instead of a Tarantool-version-based check), so the test passes on any Tarantool 3.x version (#553).

Fixed:

  • A member’s payload could be lost permanently after leave() and a subsequent rejoin.

This release spans versions 1.2.0 and 1.2.1.

Added:

  • drop_sharding_key() helper to clean up _ddl_sharding_key after dropping a space.
  • register_sharding_func() and drop_sharding_func() helpers (#59).

Fixed:

  • When a replica set had no healthy leader candidate (its leader was disabled, down, or not yet elected during stateful failover), migrator.up() used to silently skip it and report success. Now every replica set is required to have a healthy leader candidate before migrating: if a replica set has no active leader yet or its leader is not healthy, the call fails so the caller can wait for the leader and retry.

Added:

  • EmmyLua annotations (#68).

VShard 0.1.42 is fully compatible with previous vshard versions.

Added:

  • A backend for Tarantool’s recovery point manager: the vshard-router backend. It lets the manager periodically create cluster-consistent recovery points that can later be used for backup and point-in-time recovery of the whole VShard cluster. A new public router method, vshard.router.create_cluster_recovery_point(), creates a recovery point on every replica set master (#648). Only with tarantool 3.8.0+. No user-visible changes for Tarantool 2.11 users.

This release spans versions 0.0.12, 0.0.13, 0.0.14, and 0.0.15.

Changed:

  • Support for ddl-ee was added in 0.0.12 and reverted in 0.0.13; the change did not persist to 0.0.15 (#55).

Fixed:

  • Tarantool Enterprise detection in utils.get_tnt_version() by checking tarantool.package (#58).
  • Flaky cluster.test_get_instances and cluster.test_get_replicaset_instances tests by waiting until all instances report healthy status before running assertions.
  • utils.get_tnt_version() aborting with variable 'tarantool' is not declared in Cartridge applications, which broke Tarantool Enterprise detection (#61).

This release bumps dependencies and the test environment.

Added:

  • New box.cfg options for Tarantool 2.11: auth_delay, auth_type, bootstrap_strategy, disable_guest, election_fencing_mode, metrics, password_enforce_digits, password_enforce_lowercase, password_enforce_specialchars, password_enforce_uppercase, password_history_length, password_lifetime_days, password_min_length.

Fixed:

  • Account for the crud stats driver default changing to metrics.

This release adds selector-based filtering for custom metrics. Custom metrics can now be associated with hierarchical selectors and controlled via metrics.set_filter() or metrics.cfg() include/exclude options. Unknown include/exclude entries are treated as custom selectors, while built-in metric group names keep the existing behavior.

Added:

  • metrics.namespace() and metrics.set_filter() to mark custom collectors/callbacks with selectors and filter them at collection time.

Fixed:

  • metrics.cfg{exclude = {'all'}} so it excludes custom metric selectors in addition to built-in metric groups.

Added:

  • Support for Tarantool election_mode = 'manual' in Cartridge stateful failover, including single-instance replicasets.

  • Added runtime Lua API helpers:

    • require('cartridge.lua-api.failover').switch_to_manual_election_mode()
    • require('cartridge.lua-api.failover').switch_to_off_election_mode()

    to migrate a stateful replicaset between Tarantool election_mode = 'off' and election_mode = 'manual'.

  • Documentation for migrating a stateful replicaset to Tarantool manual election mode, including restart-based migration, runtime helpers, rollback, and fencing recommendations.

Changed:

  • Updated vshard dependency to 0.1.41.

Fixed:

  • A race condition during instance shutdown where membership.leave() could execute before roles were stopped, causing errors.
  • When box.ctl.promote() returns ER_INTERFERING_PROMOTE during failover, retry promotion 3 times with a 1 second delay so the new master will not be stuck in read-only mode.
  • A stateful failover race when adding a brand new replicaset: if the state provider has no appointment yet for this replicaset, failover.cfg() now falls back to topology.get_leaders_order(...)[1] (failover_priority[1]) for the initial appointment. This prevents the future leader from being switched to read_only=true and avoids deadlock during topology apply.

This release adds cluster worker configuration management and fixes incorrect error reporting in tt start when directory permissions are insufficient.

Added:

  • tt cluster worker publish: publish (upload) a worker configuration to etcd or Tarantool-based configuration storage.
  • tt cluster worker show: display a worker configuration stored in etcd or Tarantool-based configuration storage.
  • tt cluster worker delete: delete a worker configuration from etcd or Tarantool-based configuration storage.

Fixed:

  • tt start: fixed a bug where an error did not appear when access rights to the var directive were insufficient.

VShard 0.1.41 is fully compatible with the previous VShard versions.

Added:

  • A new storage configuration option: rebalancer_bucket_send_timeout. It specifies the timeout in seconds for sending a single bucket during rebalancing. This can be used to limit how long a bucket may be unavailable for writes while it is being sent.

Changed:

  • Improved rebalancer bucket selection: the rebalancer now prefers buckets that have no active RW requests on top of them.

Fixed:

  • An issue where duplicated active buckets could appear due to delayed stray TCP #214.
  • An issue where RW requests could break replication after a master switch during rebalancing #573.
  • An issue where master switches during rebalancing could lead to duplicated active buckets #576.

This release updates the platform’s key dependencies: Tarantool 2.11.9, a bugfix release of the 2.11 branch focused on improving stability and predictability. It also improves diagnostics and error handling for WAL failures, fixes hangs and WAL maintenance issues in Core, and delivers a large set of fixes in LuaJIT and the Datetime module. In addition, major ecosystem components (crud, vshard, metrics, tt-ee, cartridge, http) have been updated and refined, including safer behavior during rebalancing, fault-tolerant reads, and changes to HTTP TLS/mTLS configuration.

This is a bugfix release: 34 issues have been fixed since 2.11.8 (r702).

  • The 2.x series is the previous stable branch; upgrading to 3.x is recommended.
  • To upgrade from Tarantool 2.x to 3.x, see the upgrade procedure.

When upgrading the SDK, it is recommended to:

  • before starting the upgrade, ensure that all replica sets are healthy and in a consistent state;
  • perform the upgrade sequentially, verifying the cluster state after upgrading each component;
  • do not run data rebalancing while passing through CRUD 1.7.0 until the upgrade is fully completed.

Added:

  • A new built-in system event box.wal_error that is emitted every time Tarantool fails to commit a transaction to the write-ahead log (WAL) (gh-9405).

Fixed:

  • An issue where SSL errors were logged incorrectly when a client connection was closed.
  • A bug that could cause Tarantool to hang when using box.watch (gh-9632).
  • A bug where .xlog.inprogress files were not removed automatically on server startup when wal_dir was set and differed from the default (gh-12081).
  • A bug where a local space could not be truncated if the _truncate space was configured as synchronous (gh-12585).

  • If an ER_WAL_IO error occurs while writing to WAL, the current leader steps down immediately on the first such error.

Added:

  • Support for ffi.abi("dualnum") to detect LuaJIT mode (dual-number: distinguishing int64 integers from double).
  • New flags misc.memprof.available and misc.sysprof.available to detect whether the corresponding profiler is available in the current build. See LuaJIT memory profiler and LuaJIT platform profiler for details.

Fixed:

  • Incorrect IR_TBAR generation on aarch64.
  • Stack overflow handling when exiting a trace.
  • Dangling references to CType.
  • VM state shutdown after early OOM.
  • IR_MUL generation on x86/x64.
  • Incorrect merging of stp/ldp instructions on aarch64.
  • SCEV record invalidation when returning to a lower frame.
  • Build on macOS 15 / Clang 16.
  • IR_HREFK generation on aarch64.
  • Stack checks in varargs calls in GC64 builds.
  • Stack checks in pcall()/xpcall() in GC64 builds.
  • Allocation limit in non-JIT builds.
  • OOM handling when growing the stack in coroutine.resume() and lua_checkstack().
  • Recording loops with step -0 or control values NaN.
  • Error message generation when an error occurs while handling another error.
  • Dangling reference for an FFI callback.
  • BC_UNM for argument -0 in dual-number mode.
  • Unary minus narrowing in dual-number mode.
  • Recording of string.byte(), string.sub(), and string.find().
  • Missing type conversion for BC_FORI slots in dual-number mode.
  • Various corner cases in VM events.
  • Recording of constructor index resolution in the JIT compiler.
  • UBSan warning in unpack().

Fixed:

  • A crash due to an assert when parsing an ambiguous date: when the input contains both the day of year (yday, which implicitly defines month and day of month) and a calendar month (without day of month). Such cases are now detected and reported as an error.
  • tzoffset calculations for cases like new({timestamp=x, tz='Zone'}).
  • An inconsistency between dates created with new({tzoffset=x}) and d:set({tzoffset=x}) when d.tz ~= '' precedes set().
  • datetime.new() and datetime_object:set() now validate that timestamp is within the allowed range.
  • timestamp type checking in set().

For backward compatibility, the option compat.datetime_setfn_timestamp_type_check has been added. It is disabled by default (the “old” behavior), meaning no type check is performed. The “new” behavior with type checking is planned to become the default in 4.x.

Note

The modules listed below have changes in this release. If a module is not listed, it was not updated.

Note

Starting with CRUD 1.6.0, a vulnerability that allowed performing operations without sufficient privileges has been fixed. CRUD now strictly enforces access rights: a user can perform only the actions allowed by their privileges. If the application needs access to service spaces, the corresponding privileges must be granted explicitly.

See details in Reading and writing data with CRUD.

Safe mode and rolling-upgrade compatibility details are described in Upgrading the crud module (see Compatibility limitation during upgrade and Upgrade order).

Added:

  • crud.locate() to determine where a tuple is stored (memtx or vinyl). Works for spaces managed by the enterprise module cooler.
  • crud.len now supports options: mode, balance, prefer_replica, request_timeout.
  • Safe mode to prevent writing data to the wrong replica set during vshard rebalancing.
  • Metric tnt_crud_router_cache_clear_ts to help properly disable safe mode in a cluster.
  • Automatic switch to safe mode when rebalancing starts.
  • Ability to manually switch back to fast mode (fast mode).
  • Metric tnt_crud_storage_nil_bucket_id_compat_total to track operations performed without bucket_ref (compatibility mode with older routers).

Fixed:

  • Read-only operations (get, select, pairs, count, min, max) are now executed via healthy replicas even if all master nodes in the cluster are unavailable.
  • Storage compatibility with routers < 1.7.0: bucket_id = nil is now handled correctly in get, update, and delete. In this case, storage skips bucket referencing and logs a rate-limited warning about reduced rebalancing safety during rolling upgrades.
  • bucket_ref errors in crud.*_many methods are now returned as an array.
  • bucket_unref was moved out of the transaction.
  • Prevented duplicate metrics from being created on repeated init calls.
  • Prevented duplicate triggers on the _crud_settings_local space on repeated init calls.
  • A deadlock in crud.schema() after a schema reload error.
  • Removed metric tnt_crud_storage_safe_mode_enabled from the router.
  • Removed wrap_box_space_func_result wrapper to reduce allocations and speed up storage calls.
  • Optimize crud.select() and crud.pairs() pagination with after cursor by using native after option on Tarantool 2.10+ for O(1) cursor positioning.

Changed:

  • When switching to safe mode, the practice of marking/stopping iproto fibers in fast mode was discontinued; operation correctness on storage is validated via yield_checks in tests.
  • Switching to safe mode was moved from the on_commit trigger to on_replace.
  • Vinyl spaces always operate in safe mode.

Version 0.1.40 is fully compatible with previous vshard versions.

Added:

  • Ability to disable the log rate limiter via the consts module.
  • Calling vshard.router.info() and vshard.storage.info() is now allowed even when the router or storage is disabled. The functions now also return a new boolean field: is_enabled.
  • Improved logging for rebalancer and recovery related activities.

Fixed:

  • An issue where the old master node could not discover the new master instance within a replica set.
  • Connection leak: connections were not released by the garbage collector after reconfiguration or reload.
  • Transaction limitation when working with _bucket: previously, the on_commit trigger on _bucket blocked writes to other spaces within the same transaction (for example, from on_replace triggers). Such scenarios are now allowed: on_commit skips changes related to “foreign” spaces.
  • An issue where a user error was masked by the Transaction is active... error when calling a persistent function that throws an error and does not close a transaction on Tarantool versions earlier than 3.0.0-beta1-18. Now, vshard automatically closes such transactions and returns the original user error.
  • An issue where a connection to a replica was not automatically restored when it was closed either by vshard or by the user.

  • graphite: added support for sending metrics to multiple servers.
  • Removing a replica via box.space._cluster:delete() does not remove that replica’s information from metrics; it disappears only after a cluster restart.
  • Backward compatibility with the previous plugin version is preserved.
  • Behavior changes:
    • init now assigns a unique name to the created fiber based on the input graphite server options (if provided).
    • Added stop() to stop all fibers started by the plugin.

Added:

  • tt pack: added support for nested .packignore files in the root of a tt environment.
  • tt status: added the --format option to output status in JSON and YAML formats (machine-readable output).

Changed:

  • tt export: changed the default behavior for compound fields (arrays and maps): they are now exported in JSON format by default. To restore the previous behavior, use --compound-value-format=ignore.

Fixed:

  • Integrity checking for an application using the Cartridge directory layout (a single application whose root directory is the environment root).
  • An issue with Tarantool 3.5+: the instance did not stop when the periodic integrity check failed.
  • Minor fixes identified by the Svacer static analyzer and CVE scanners.

Changed:

  • Do not expand the file tree by default on the code page.
  • Update vshard dependency to 0.1.40.
  • Update membership dependency to 2.5.3.
  • Update cartridge-metrics-role dependency to 0.1.3.
  • Update graphql dependency to 0.3.1.
  • Update http dependency to 1.9.0.

Fixed:

  • Refactor synchronous spaces monitoring to consider the actual failover mode. Sync spaces warning is now logged when failover is configured in a mode that doesn’t support them (eventual, stateful without synchro_mode), instead of unconditionally at instance startup.
  • Added is_sync_spaces_supported() function to cartridge.failover module.
  • Sync spaces are now detected dynamically, allowing detection of spaces added at runtime.

The release introduces a new ssl_verify_client option and changes default behavior with provided ca_file parameter. Also a few bugs were fixed.

Added:

  • New ssl_verify_client option.

Fixed:

  • Do not recreate server if it’s address and port were not changed.
  • Server doesn’t change after updating parameters on config reload.

Breaking change:

Mutual TLS with ca_file option enabled by default.

Module http documentation.

  • Bumped checks version to 3.4.0.
  • Bumped Cartridge version to 2.16.4.
  • Bumped vshard version to 0.1.37.

  • Bumped tarantool-2.11 series to 2.11.8.

  • Moved CI files from sdk-ci repository.

  • Bumped tt-ee version to v2.11.0.

  • Replaced Cartridge EE with Cartridge CE 2.16.3.
  • Added CRUD CE 1.6.1.
  • Added expirationd CE 1.7.0.
  • Added ddl CE 1.7.1.
  • Bumped metrics version to 1.5.0.
  • Added migrations CE 1.1.0.
  • Added vshard CE 0.1.36.
  • Moved to Community Edition modules.

  • Fixed glibc package URL to archived.

  • Added manual trigger job to run tests to generate certificate of compliance. Ready for Astra Linux.

  • Bumped Cartridge version to 2.16.2.
  • Bumped metrics version to 1.4.0.
  • Bumped http version to 1.8.0.
  • Bumped crud-ee version to 1.7.4.

  • Bumped tt-ee version to v2.10.1.

  • Bumped Cartridge version to 2.16.0.

  • Bumped vshard-ee version to 0.1.34.

  • Bumped Cartridge version to 2.15.4.

  • Bumped tt-ee version to v2.10.0.

  • Bumped migrations-ee version to 1.3.2.

  • Bumped tarantool-2.11 series to 2.11.7.

  • Bumped Kafka version to 1.6.10.

  • Bumped Cartridge version to 2.15.3.

  • Bumped vshard-ee version to 0.1.33.

  • Bumped tt-ee version to v2.9.1.

  • Bumped tt-ee version to v2.9.0.
  • Bumped Cartridge version to 2.15.2.
  • Bumped membership version to 2.5.2.

  • Bumped Cartridge version to 2.15.1.
  • Bumped tt-ee version to v2.8.1.
  • Bumped vshard-ee version to 0.1.32.

  • Bumped Cartridge version to 2.15.0.
  • Bumped membership version to 2.5.1.
  • Bumped expirationd-ee version to 1.8.0.

  • Bumped tarantool-2.11 series to 2.11.6.
  • Bumped tt-ee version to v2.8.0.
  • Bumped migrations-ee version to 1.3.1.

  • Bumped Cartridge version to 2.14.0.
  • Bumped membership version to 2.4.6.

  • Bumped vshard-ee version to 0.1.31.
  • Bumped tt-ee version to v2.7.0.

  • Bumped tt-ee version to v2.6.0.
  • Bumped Cartridge version to 2.13.0.
  • Bumped vshard version to 0.1.30.
  • Bumped http version to 1.7.0.

  • Bumped tarantool-2.11 series to 2.11.5.
  • Bumped tt-ee version to v2.5.2.
  • Updated Kafka to 1.6.9.
  • Bumped tt-ee version to v2.5.1.
  • Bumped tt-ee version to v2.5.0.

  • Moved cartridge-auth-extension to stable directory.
  • Bumped crud-ee version to 1.7.1.
  • Bumped migrations-ee version to 1.3.0.

  • Bumped Cartridge version to 2.12.4.
  • Bumped vshard version to 0.1.29.
  • Bumped http version to 1.6.0.

  • Bumped tarantool-2.11 series to 2.11.4.
  • Bumped Cartridge version to 2.12.3.

  • Bumped tt-ee version to v2.4.0.
  • Bumped queue version to 1.4.2.
  • Added Migration Guide to bundle.

  • Updated Oracle to 1.5.0 for x86_64.
  • Updated oci to 21.14 for x86_64.

  • Moved to Enterprise Edition modules.
  • Fixed Docker image due to CentOS 7 EOL.
  • Fixed CI/CD workflows running inside CentOS 7.

  • Bumped tt-ee version to v2.3.1.
  • Enabled tt bash completion.
  • Updated Kafka to 1.6.8.

  • Updated Docker image.
  • Updated CMake to 3.20.6.
  • Installed dependencies for building OpenSSL.
  • Fixed installation of Python 3.6.

  • Enabled back aarch64 jobs.
  • Temporary disabled aarch64 jobs.

  • Adjusted CI workflows for 1.x-2.x development branch.
  • Deleted tarantool-master submodule.

  • Updated CRUD to 1.5.1.
  • Updated sideservice to 0.2.1.
  • Updated httpgo to 0.2.2.
  • Updated httpgo-crud to 0.1.1.

  • Updated cartridge-cli to 2.12.12.
  • tt used instead of tarantoolctl for build/test routines.
  • Made Tarantool and bundle versions correct.
  • Bumped tarantool-2.11 to 2.11.3.

  • Updated Cartridge to 2.10.0.
  • Updated membership to 2.4.4.
  • Updated ddl to 1.7.0.
  • Updated graphqlapi to 0.0.11.

  • Updated expirationd to 1.6.0.
  • Updated sharded-queue to 1.0.0.
  • Dropped building MacOS bundles.
  • Updated cartridge-cli to 2.12.11.

  • Updated tt-ee to 2.2.1.
  • Updated CRUD to 1.5.0.
  • Updated membership to 2.4.3.
  • Updated Cartridge to 2.9.0.

  • Updated bundle tt-ee aarch64.
  • Updated tt-ee to 2.2.0.
  • Fixed running Tarantool tests on RED OS.

  • Updated CRUD to 1.4.3.
  • Updated luatest to 1.0.1.
  • Updated migrations to 0.7.0.
  • Updated tt-ee to 2.1.2.

  • Updated Cartridge to 2.8.5.
  • Updated CRUD to 1.4.2.
  • Added frontend-core 8.2.2.
  • Updated membership to 2.4.2.
  • Updated sideservice to 0.2.0.
  • Updated tt-ee to 2.1.1.
  • Updated vshard to 0.1.26.

  • Updated httpgo to 0.2.1.
  • Added httpgo-crud 0.1.0.
  • Updated tarantool-2.11 to 2.11.2.

  • Updated tarantool-master to 3.0.0-beta1.

  • Updated Cartridge to 2.8.4.
  • Updated CRUD to 1.4.1.
  • Updated ddl to 1.6.5.
  • Added httpgo 0.2.0.
  • Updated tt-ee to 2.0.0.

  • Updated cartridge-cli to 2.12.9.
  • Updated tt-ee to 1.3.1.

  • Updated tt-ee to 1.3.0.
  • Updated Cartridge to 2.8.3.
  • Updated cartridge-cli-extensions to 1.1.2.
  • Updated CRUD to 1.3.0.
  • Updated queue to 1.3.3.
  • Updated sharded-queue to 0.1.1.
  • Updated membership to 2.4.1.
  • Added tests for Astra Linux 1.7.

  • Updated tarantool-2.10 to 2.10.8.
  • Updated tarantool-master to 3.0.0-alpha3.
  • Updated migrations to 0.6.0.
  • Updated tt-ee to 1.2.0.
  • Updated space-explorer to 1.1.8.
  • Updated cartridge-metrics-role to 0.1.1.
  • Updated Cartridge to 2.8.2.
  • Updated expirationd to 1.5.0.
  • Added sideservice 0.1.0.

  • Updated cartridge-cli to 2.12.7.
  • Updated tarantool-2.11 to 2.11.1.

  • Added CRUD 1.2.0.
  • Added ddl 1.6.3.
  • Added sharded-queue 0.1.0.
  • Added ddl 1.6.4.
  • Updated tt-ee to 1.1.2.
  • Updated cartridge-cli to 2.12.6.

  • Updated tarantool-2.10 to 2.10.7.
  • Updated tarantool-2.11 to 2.11.0.
  • Added Kafka 1.6.6.
  • Added vshard 0.1.24.
  • Added metrics 1.0.0.
  • Added cartridge-metrics-role 0.1.0.
  • Added Cartridge 2.8.0.
  • Added http 1.5.0.

  • Added tt-ee and tt environment configuration.
  • Added CRUD 1.1.1.
  • Added avro-schema 3.1.1.
  • Added expirationd 1.4.0.
  • Added graphql 0.3.0.
  • Added graphqlapi 0.0.10.
  • Added metrics 0.17.0.
  • Added migrations 0.5.0.
  • Added Oracle 1.4.0.
  • Added Cartridge 2.7.9.
  • Added vshard 0.1.23.
  • Added Kafka 1.6.5.

  • Updated tarantool-2.10 to 2.10.6.

  • Updated tarantool-2.11 to 2.11.0-rc2.

  • Added the tarantool-2.11 submodule.

  • Updated tarantool-1.10 to 1.10.15.

  • Updated tarantool-master to 3.0.0-entrypoint.

  • Updated tarantool-2.10 to 2.10.5.

  • Updated tarantool-2.8 to apply 2 hotfixes.

  • Fixed non-interactive installation of the brew package.
  • Changed the owner of the /usr/local/bin directory.
  • Installed awscli@1 instead of awscli since it takes much less time.

  • Added the missing property 2.10 for scope CACHE in CMakeLists.txt.

  • Added expirationd 1.3.1.

  • Used runners with label regular for builds and the tagged release workflow.

  • Added http 1.4.0.
  • Added space-explorer 1.1.7.
  • Added checks 3.2.0.
  • Added metrics 0.16.0.
  • Added Cartridge 2.7.8.

  • Added the -DENABLE_LTO=ON flag for tarantool-ee@master branch to CMakeLists.txt.

  • Upgraded devtoolset from 8 to 9. It was required for upgrading ld from 2.30 to 2.31+ for LTO.

  • Updated tarantool’s master branch to a recent revision.

  • Fixed code style in the Linux and MacOS workflows.

  • Reliably installed packages in MacOS builds.

  • Refactored the way that GC64 builds are defined in the build workflow. There are no changes to the composition of resulting bundles.

  • Added alerting failures in builds on stable branches and integration testing to VK Teams chats.

  • Updated to fresh tarantool master (2.11.0-entrypoint-107-ga18449d)

  • Outdated workflow runs are now canceled to save CI time.

Release SDK by tags:

  • Run workflow in SDK docker container.
  • Uploaded SDK files for 1.10, 2.8, 2.10 versions to release folder.
  • Added consistency check for all versions.

  • On feature branches, SDK is now rebuilt only on relevant changes.

  • Updated Tarantool EE to 2.10.4.

  • Updated bundled OpenSSL to version 1.1.1q.

  • Removed support of Tarantool 2.7.
  • Started using tarantool/actions/prepare-checkout to make builds more stable.

  • Remove the local registry and setup using GitHub registry.
  • Sync rocks cache to S3 and back.
  • Setup using shared runners.
  • Refactor and format ci-linux.yml and ci-macos.yml.

  • Removed Kafka 1.5.0 due to a build issue with Tarantool 2.10.3 and higher.
  • Updated Kafka to version 1.6.2.

  • Updated tuple-keydef to version 0.0.3.

  • Enabled parallel build of rocks for MacOS in CI.

  • Updated Tarantool to 2.10.3.
  • Added a readable error for the case when the flight recoder fails to write data due to insufficient free space on the disk device. Previously, it was sending a SIGBUS error.
  • Fixed a crash in the flight recorder caused by non-thread-safe log recording from multiple threads.

  • Updated Tarantool to 2.10.2.
  • Increased resolution of stored entries in flight recorder.
  • Fixed a bug in the flight recorder that resulted in skipping log entries in case box.cfg.log_level is less than flightrec_log_level.

  • Updated Tarantool to 2.10.1.
  • Updated Cyrus SASL to version 2.1.28.
  • Updated OpenLDAP to version 2.5.13.
  • Updated LZ4 to version 1.9.3. Fixed CVE-2021-3520.
  • Fixed replication reconnect failure after disabling SSL encryption.
  • Fixed a crash that occurred while tyring to start an instance that has a compressed memtx space.
  • Fixed CVE-2022-29242 in GOST SSL engine.
  • Fixed a bug in the flight recorder reader implementation that resulted in a hang or error while trying to open an empty section.

  • Default audit log format was changed to CSV.

  • Implemented user-defined audit events. Now it’s possible to log custom messages to the audit log from Lua.
  • [Breaking change] Switched the default audit log format to CSV. The format can be switched back to JSON using the new box.cfg.audit_format configuration option.
  • Implemented the audit log filter. Now, it’s possible to enable logging only for a subset of all audit events using the new box.cfg.audit_filter configuration option.

  • Implement constraints and foreign keys. Now a user can create function constraints and foreign key relations (gh-6436).
  • Changed log level of some information messages from critical to info (gh-4675).
  • Added predefined system events: box.status, box.id, box.election and box.schema (gh-6260).
  • Introduced transaction isolation levels in Lua and IPROTO (gh-6930).

  • Disabled the deferred DELETE optimization in Vinyl to avoid possible performance degradation of secondary index reads. Now, to enable the optimization, one has to set the defer_deletes flag in space options (gh-4501).

  • Added support of console autocompletion for net.box objects stream and future (gh-6305).

  • Parse method to allow converting string literals in extended iso-8601
    or rfc3339 formats (gh-6731).
  • The range of supported years has been extended in all parsers to cover
    fully -5879610-06-22..5879611-07-11 (gh-6731).

  • Added bundling of GNU libunwind to support backtrace feature on AARCH64 architecture and distributives that don’t provide libunwind package.
  • Re-enabled backtrace feature for all RHEL distributions by default, except for AARCH64 architecture and ancient GCC versions, which lack compiler features required for backtrace (gh-4611).

  • Disabled audit log unless explicitly configured. Before this change, audit events were written to stderr if box.cfg.audit_log wasn’t set. Now, audit log is disabled in this case.
  • Disabled audit logging of replicated events. Now, replicated events (for example, user creation) are logged only on the origin, never on a replica.

  • Banned DDL operations in space on_replace triggers, since they could lead to a crash (gh-6920).
  • Fixed a bug due to which all fibers created with fiber_attr_setstacksize() leaked until the thread exit. Their stacks also leaked except when fiber_set_joinable(..., true) was used.
  • Fixed a crash in mvcc connected with secondary index conflict (gh-6452).
  • Fixed a bug which resulted in wrong space count (gh-6421).
  • Select in RO transaction now reads confirmed data, like a standalone (auotcommit) select does (gh-6452).

  • Fixed potential obsolete data write in synchronous replication due to race in accessing terms while disk write operation is in progress and not yet completed.
  • Fixed replicas failing to bootstrap when master is just re-started (gh-6966).

  • Fixed the behavior of tarantool console on SIGINT. Now Ctrl+C discards the current input and prints the new prompt (gh-2717).

  • Fixed assertion or segfault when MP_EXT received via net.box (gh-6766).
  • Now ROUND() properly support INTEGER and DECIMAL as the first argument (gh-6988).

  • Intervals received after datetime arithmetic operations may be improperly normalized if result was negative

    tarantool> date.now() - date.now()
    ---
    - -1.000026000 seconds
    ...
    

    I.e. 2 immediately called date.now() produce very close values, whose difference should be close to 0, not 1 second (gh-6882).

  • Changed the type of the error returned by net.box on timeout from ClientError to TimedOut (gh-6144).

  • Fixed some binary protocol encryption bugs.
Found what you were looking for?
Feedback